<!--
 * @Author: LBH 1336709799@qq.com
 * @Date: 2024-11-13 20:08:15
 * @LastEditors: LBH 1336709799@qq.com
 * @LastEditTime: 2024-11-13 22:09:24
 * @FilePath: \Day04\医疗系统\hospitalsystem\src\App.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<template>
  <div>
    <input placeholder="输入关键字搜索" v-model="doctor">
    <table class="my-table">
      <thead>
        <tr>
          <th>就诊日期</th>
          <th>医生姓名</th>
          <th>诊断结果</th>
          <th>处方信息</th>
          <th>操作</th>
        </tr>
      </thead>
      <tbody>
        <tr v-for="(item,index) in list" :key="index">
          <td>{{ item.date }}</td>
          <td>{{ item.doctor }}</td>
          <td>{{ item.diagnosis }}</td>
          <td>{{ item.prescription }}</td>
          <td @click="selected(item)">详情</td>
        </tr>
      </tbody>
    </table>
    <MyDetail :visible.sync="isShow" :list="dtlist" ></MyDetail>
  </div>
</template>
<script>
import MyDetail from './components/MyDetail.vue';
export default{
  data(){
    return{
      dtlist:'',
      list:[],
      doctor:'',
      isShow:false,
      records: [
      {
        date: '2022-01-01',
        doctor: '张三',
        diagnosis: '感冒',
        prescription: '感冒药',
      },
      {
        date: '2022-02-01',
        doctor: '李四',
        diagnosis: '头疼',
        prescription: '止疼药',
      },
      {
        date: '2022-03-01',
        doctor: '王五',
        diagnosis: '腰痛',
        prescription: '止痛贴',
      }
    ]

    }
    
  },
  created(){
    this.listdata()
  },
  components:{
    MyDetail
  },
  methods:{
    listdata(){
      this.list = this.records
    },
    selected(dtlist){
      this.isShow = true
      this.dtlist = dtlist
    }

  },
  watch:{
    doctor(newValue){
      this.list = this.list.filter(item => item.doctor === newValue )
      if(this.list.length < 1) this.list = this.records
    }
  }
}
</script>

<style scoped>
  .my-table {
    border-collapse: collapse;
    width: 100%;
  }

  .my-table td, .my-table th {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
  }

  .my-table th {
    background-color: #f2f2f2;
  }
</style>
